#ifndef SEQLIST_H
#define SEQLIST_H

#include "book.h"  // 引入Book结构体

// 动态顺序表结构体
typedef struct {
    Book* data;   // 存储数据的动态数组
    int size;     // 当前元素个数
    int capacity; // 容量
} SeqList;

// 初始化顺序表
void InitSeqList(SeqList* list);

// 扩容顺序表
void ExpandSeqList(SeqList* list);

// 查找元素索引（按ID）
int FindBookIndex(SeqList* list, const char* id);

// 插入图书到顺序表末尾
void PushBackBook(SeqList* list, Book book);

// 删除顺序表中指定索引的元素
void RemoveBookByIndex(SeqList* list, int index);

// 释放顺序表内存
void FreeSeqList(SeqList* list);

#endif